package br.com.travesso.util;

import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class Criptografia {

	private static final String SHA256_ALGORITHM_NAME = "SHA-256";

	/**
	 * Obtém representação hexadecimal para hash SHA-256 do texto informado
	 * 
	 * @param String
	 */
	public static String sha256(String texto) {
		MessageDigest md;
		try {
			md = MessageDigest.getInstance(SHA256_ALGORITHM_NAME);
			md.update(texto.getBytes());
			return new BigInteger(1, md.digest()).toString(16);
		} catch (NoSuchAlgorithmException e) {
			throw new RuntimeException(
					"Erro no algoritmo de criptografia de Senha", e);
		}
	};
}
